<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
    </head>
    <body>
        <nav id="nav">
            <a href="#">
                <span>I Can</span>
                <img
                    src="https://images.unsplash.com/photo-1660167941111-f7ccce818728?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxlZGl0b3JpYWwtZmVlZHw5fHx8ZW58MHx8fHw%3D&auto=format&fit=crop&w=800&q=60"
                />
            </a>
            <a href="#">
                <span>Show</span>
                <img
                    src="https://images.unsplash.com/photo-1660070918769-f34c724cfe43?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxlZGl0b3JpYWwtZmVlZHwxMHx8fGVufDB8fHx8&auto=format&fit=crop&w=800&q=60"
                />
            </a>
            <a href="#">
                <span>You</span>
                <img
                    src="https://images.unsplash.com/photo-1660169376132-409f66fedcee?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxlZGl0b3JpYWwtZmVlZHwxMnx8fGVufDB8fHx8&auto=format&fit=crop&w=800&q=60"
                />
            </a>
            <a href="#">
                <span>How</span>
                <img
                    src="https://images.unsplash.com/photo-1660201367471-9fc0cb34734f?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxlZGl0b3JpYWwtZmVlZHwxNHx8fGVufDB8fHx8&auto=format&fit=crop&w=800&q=60"
                />
            </a>
            <a href="#">
                <span>To Make</span>
                <img
                    src="https://images.unsplash.com/photo-1660158847730-e93a2a96ca59?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxlZGl0b3JpYWwtZmVlZHwyMHx8fGVufDB8fHx8&auto=format&fit=crop&w=800&q=60"
                />
            </a>
            <a href="#">
                <span>This</span>
                <img
                    src="https://images.unsplash.com/photo-1660074519968-d718487e9a7b?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxlZGl0b3JpYWwtZmVlZHwyM3x8fGVufDB8fHx8&auto=format&fit=crop&w=800&q=60"
                />
            </a>
            <a href="#">
                <span>In 60</span>
                <img
                    src="https://images.unsplash.com/photo-1657299156568-c94580e20fb6?ixlib=rb-1.2.1&ixid=MnwxMjA3fDF8MHxlZGl0b3JpYWwtZmVlZHwyNnx8fGVufDB8fHx8&auto=format&fit=crop&w=500&q=60"
                />
            </a>
            <a href="#">
                <span>Seconds</span>
                <img
                    src="https://images.unsplash.com/photo-1660087031197-f483b4388e91?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxlZGl0b3JpYWwtZmVlZHwyN3x8fGVufDB8fHx8&auto=format&fit=crop&w=500&q=60"
                />
            </a>
        </nav>

        <a id="source-link" class="meta-link" href="http://cinderbloc.com" target="_blank">
            <i class="fa-solid fa-link"></i>
            <span>Source</span>
        </a>

        <a
            id="yt-link"
            class="meta-link"
            href="https://youtube.com/shorts/O-KSoFq-JyE"
            target="_blank"
        >
            <i class="fa-brands fa-youtube"></i>
            <span>60s Tutorial</span>
        </a>
    </body>
    <style>
        body {
            background-color: rgb(10, 10, 10);
            margin: 0px;
            overflow: hidden;
        }

        nav {
            display: flex;
            flex-direction: column;
            margin-top: 20vh;
            padding: clamp(1rem, 5vw, 6rem);
        }

        nav > a {
            color: rgba(255, 255, 255, 0.25);
            font-family: 'Open Sans', sans-serif;
            font-size: clamp(3rem, 8vw, 10rem);
            font-weight: 300;
            text-decoration: none;
            position: relative;
        }

        nav > a:hover {
            color: white;
        }

        nav > a > span {
            display: block;
            border-bottom: 1px solid transparent;
            border-top: 1px solid transparent;
            position: relative;
            z-index: 2;
        }

        nav > a:hover > span {
            border-top-color: white;
            border-bottom-color: white;
        }

        nav > a > img {
            position: absolute;
            opacity: 0;
            transform: translate(-50%, -50%) scale(0.5);
            transition: transform 250ms, opacity 250ms;
            pointer-events: none;
            width: min(40vw, 500px);
        }

        nav > a:hover > img {
            opacity: 1;
            transform: translate(-50%, -50%) scale(1);
        }

        /* -- YouTube Link Styles -- */

        body.menu-toggled > .meta-link > span {
            color: rgb(30, 30, 30);
        }

        #source-link {
            bottom: 60px;
        }

        #source-link > i {
            color: rgb(94, 106, 210);
        }

        #yt-link > i {
            color: rgb(239, 83, 80);
        }

        .meta-link {
            align-items: center;
            backdrop-filter: blur(3px);
            background-color: rgba(255, 255, 255, 0.05);
            border: 1px solid rgba(255, 255, 255, 0.1);
            border-radius: 6px;
            bottom: 10px;
            box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.1);
            cursor: pointer;
            display: inline-flex;
            gap: 5px;
            left: 10px;
            padding: 10px 20px;
            position: fixed;
            text-decoration: none;
            transition: background-color 400ms, border-color 400ms;
            z-index: 10000;
        }

        .meta-link:hover {
            background-color: rgba(255, 255, 255, 0.1);
            border: 1px solid rgba(255, 255, 255, 0.2);
        }

        .meta-link > i,
        .meta-link > span {
            height: 20px;
            line-height: 20px;
        }

        .meta-link > span {
            color: white;
            font-family: 'Rubik', sans-serif;
            font-weight: 500;
        }
    </style>
    <script>
        const nav = document.getElementById('nav')

        for (const link of nav.getElementsByTagName('a')) {
            link.onmousemove = (e) => {
                const rect = link.getBoundingClientRect(),
                    img = link.querySelector('img')

                img.style.left = `${e.clientX - rect.left}px`
                img.style.top = `${e.clientY - rect.top}px`
            }
        }

        window.onmousemove = (e) => {
            const percent = e.clientY / window.innerHeight

            nav.animate(
                {
                    transform: `translateY(${percent * nav.offsetHeight * -1}px)`
                },
                {
                    fill: 'forwards',
                    duration: 4000
                }
            )
        }
    </script>
</html>
